In the operation of remote controlled video surveillance camera systems, it is desirable to be able to store patterns of camera operational parameters, such as position and movement data, for future recall and playback. A pattern can include simply moving from side to side in one axis (panning) or can include a series of more complicated movements, area scans, preprogrammed sweeps and other sequences of operational characteristics. For example, a pattern may constitute moving a camera from one point having a first X and Y coordinate to another point having a different X and Y coordinate, where the path that the camera takes from the first coordinate to the second coordinate may be comprised of any combination of side to side (panning) movements and/or up and down (tilting) movements.
Storing pattern data requires a significant memory capacity that many systems, especially portable stand-alone video surveillance systems, do not possess. Furthermore, the known systems and methods of pattern storage relied on the occurrence of multiple repetitions of record entries, whereby the same camera operation parameters were stored in successive records pattern data. This is often the case when a camera is oriented towards a particular field of view, is set to a particular zoom or iris setting, and then does not charge its state for significant periods of time. However, an automated recording of the operational status such as pan position, tilt position, zoom, iris and/or focus settings of the camera system is stored as a pattern, wherein a record of the status is stored at regular time intervals. Thus for many time intervals, the system records the same pattern status for the camera.
For example, the known systems and methods for storing a pattern are accomplished by sending a record of the position data of either the control device, such as a joystick or keyboard, or the actual position of the camera to a memory storage device every 1/60 of a second. By this method, a recording of the position data is made which contains 60 entries per second. For example, when storing the data from a joystick, the vector of the joystick is stored in the memory storage device, when the pattern is played back, the data is interpreted by a micro-controller which controls the camera movement as if it was being received from the joystick, and the previously stored pattern is thereby duplicated.
As stated above, a disadvantage encountered in these methods is that if the pattern data does not change during an extended period of time, excessively repetitive consecutive records are entered into the memory storage device. This in turn uses a large amount of available memory. It is therefore desirable to have a system and method for streamlining and compressing the storage of pattern data in a remote controlled video surveillance camera system.